package com.li.onjava8.concurrent.under.exception;

import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;

/**
 * 你无法捕获到从线程逃逸的异常。一旦异常越过了任务的 run() 方法，它就会传递至控制台，除非你
 * 采取特殊步骤来捕获此类错误异常。
 * 即使在 main() 方法体内包裹 try-catch 代码块来捕获异常也不成功：
 */
public class ExceptionThread implements Runnable{
    @Override
    public void run() {
        throw new RuntimeException();
    }

    public static void main(String[] args) {
        ExecutorService exec = Executors.newCachedThreadPool();
        exec.execute(new ExceptionThread());
        exec.shutdown();
    }
}

